﻿/*
 * This software is the confidential and proprietary
 * information of NetBay
 * Such confidential information should not be disclosed
 * NetBay copyright(c) 2010
 */


using System;
using System.Runtime.Serialization;

namespace NetBay.Core.BusinessEntities
{

    [DataContract]
    public class Genesis : ReturnObject
    {

        #region Private members

        /// <summary>
        /// Ex : CONSULTATION
        /// </summary>
        private string m_sAction;
        

        /// <summary>
        /// Re_id
        /// </summary>
        private long m_lIdentifierOrga;

        /// <summary>
        /// Indicate the name of the organization (re_nom)
        /// </summary>
        private string m_sNameOrga;

        /// <summary>
        /// Re_Description
        /// </summary>
        private string m_sDescriptionOrga;

        /// <summary>
        /// Document folder identifier (RP_TD_ID)
        /// </summary>
        private long m_lIdentifierTD;

        /// <summary>
        /// The name of the document folder (RP_TD_NOM)
        /// </summary>
        private string m_sNameTD;

        /// <summary>
        /// Folder (RP_TD_LIBELLE)
        /// </summary>
        private string m_sDescriptionTD;

        /// <summary>
        /// Mail code of Genesis
        /// </summary>
        private string m_sMailCode;

        /// <summary>
        /// recor_posit_index (Table r_erp_correspondance)
        /// </summary>
        private int m_iIndexPosit;

        /// <summary>
        /// 
        /// </summary>
        private int m_iIdentifierIndex;

        /// <summary>
        /// 
        /// </summary>
        private string m_lDescriptIndexCorrespondance;

        /// <summary>
        /// Type of Search (IDOS ==> DOS : DOSSIER , PER : PERSONNE, MES : MESURE Genesis)
        /// </summary>
        private string m_sTypeSearch;

        /// <summary>
        /// Image name identifier (rd_idmage)
        /// </summary>
        private string m_szImageName;

        /// <summary>
        /// 
        /// </summary>
        private bool m_bExclusif;

       

        #endregion


        #region Properties

        /// <summary>
        /// 
        /// </summary>
        [DataMember]
        public string Action
        {
            get { return m_sAction; }
            set { m_sAction = value; }
        }

        /// <summary>
        /// Get or set the unique identifier (re_id)
        /// </summary>
        [DataMember]
        public long IdentifierOrga
        {
            get { return m_lIdentifierOrga; }
            set { m_lIdentifierOrga = value; }
        }
        /// <summary>
        /// Indicate the name of the organization (re_nom)
        /// </summary>
        [DataMember]
        public string NameOrga
        {
            get { return m_sNameOrga; }
            set { m_sNameOrga = value; }
        }

        /// <summary>
        /// Re_description
        /// </summary>
        [DataMember]
        public string DescriptionOrga
        {
            get { return m_sDescriptionOrga; }
            set { m_sDescriptionOrga = value; }
        }

        /// <summary>
        /// RP_TD_ID
        /// </summary>
        [DataMember]
        public long IdentifierTD
        {
            get { return m_lIdentifierTD; }
            set { m_lIdentifierTD = value; }
        }

        /// <summary>
        /// Re_TD_Nom
        /// </summary>
        [DataMember]
        public string NameTD
        {
            get { return m_sNameTD; }
            set { m_sNameTD = value; }
        }

        /// <summary>
        /// Re_Td_libelle
        /// </summary>
        [DataMember]
        public string DescriptionTD
        {
            get { return m_sDescriptionTD; }
            set { m_sDescriptionTD = value; }
        }

        /// <summary>
        /// Mail code of GENESIS
        /// </summary>
        [DataMember]
        public string MailCode
        {
            get { return m_sMailCode; }
            set { m_sMailCode = value; }
        }

        /// <summary>
        /// recor_posit_index (table r_erp_correspondance)
        /// </summary>
        [DataMember]
        public int IndexPosit
        {
            get { return m_iIndexPosit; }
            set { m_iIndexPosit = value; }
        }


        
        [DataMember]
        public int IdentifierIndex
        {
            get { return m_iIdentifierIndex; }
            set { m_iIdentifierIndex = value; }
        }


        [DataMember]
        public string DescriptIndexCorrespondance
        {
            get { return m_lDescriptIndexCorrespondance; }
            set { m_lDescriptIndexCorrespondance = value; }
        }

        /// <summary>
        /// Type of Search (IDOS ==> DOS : DOSSIER , PER : PERSONNE, MES : MESURE Genesis)
        /// </summary>
        [DataMember]
        public string TypeSearch
        {
            get { return m_sTypeSearch; }
            set { m_sTypeSearch = value; }
        }

        /// <summary>
        /// Image name identifier (rd_idmage)
        /// </summary>
        [DataMember]
        public string ImageName
        {
            get { return m_szImageName; }
            set { m_szImageName = value; }
        }

        /// <summary>
        /// 
        /// </summary>
        [DataMember]
        public bool Exclusif
        {
            get { return m_bExclusif; }
            set { m_bExclusif = value; }
        }

        #endregion

        public override object Clone()
        {
            throw new NotImplementedException();
        }


        

    }


    public abstract class GenesisDer : Genesis
    {
        
    }

}
